﻿using System;
namespace Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg {
    
    
    public partial class DetailandmedOsaPant : global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IDetailandmedOsaPant {
        
        private string @__osapantVoiTingimuslikVoorandamine;
        
        private string @__osaOmanikuLiik;
        
        private string @__osaOmanikuIsikukoodRegistrikood;
        
        private string @__osaOmanikuValisKood;
        
        private System.DateTime? @__osaOmanikuSynniaeg;
        
        private string @__osaOmanikuNimi;
        
        private string @__osaOmanikuEesnimi;
        
        private System.Decimal? @__osaSuurus;
        
        private System.Int32? @__osapandiJarjekoht;
        
        private string @__osapandiKirjeldus;
        
        private System.DateTime? @__osapandiAlgusKpv;
        
        private System.DateTime? @__osapandiLoppKpv;
        
        private System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IDetailandmedPandipidaja> @__pandipidajad = new System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IDetailandmedPandipidaja>();
        
        public DetailandmedOsaPant() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public DetailandmedOsaPant(string @osapantVoiTingimuslikVoorandamine, string @osaOmanikuLiik, string @osaOmanikuIsikukoodRegistrikood, string @osaOmanikuValisKood, System.DateTime? @osaOmanikuSynniaeg, string @osaOmanikuNimi, string @osaOmanikuEesnimi, System.Decimal? @osaSuurus, System.Int32? @osapandiJarjekoht, string @osapandiKirjeldus, System.DateTime? @osapandiAlgusKpv, System.DateTime? @osapandiLoppKpv, System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IDetailandmedPandipidaja> @pandipidajad) {
            this.@__osapantVoiTingimuslikVoorandamine = @osapantVoiTingimuslikVoorandamine;
            this.@__osaOmanikuLiik = @osaOmanikuLiik;
            this.@__osaOmanikuIsikukoodRegistrikood = @osaOmanikuIsikukoodRegistrikood;
            this.@__osaOmanikuValisKood = @osaOmanikuValisKood;
            this.@__osaOmanikuSynniaeg = @osaOmanikuSynniaeg;
            this.@__osaOmanikuNimi = @osaOmanikuNimi;
            this.@__osaOmanikuEesnimi = @osaOmanikuEesnimi;
            this.@__osaSuurus = @osaSuurus;
            this.@__osapandiJarjekoht = @osapandiJarjekoht;
            this.@__osapandiKirjeldus = @osapandiKirjeldus;
            this.@__osapandiAlgusKpv = @osapandiAlgusKpv;
            this.@__osapandiLoppKpv = @osapandiLoppKpv;
            this.@__pandipidajad = @pandipidajad;
        }
        
        /// <summary>
        /// Required parameters
        /// </summary>
        public DetailandmedOsaPant(System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IDetailandmedPandipidaja> @pandipidajad) {
            this.@__pandipidajad = @pandipidajad;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected DetailandmedOsaPant(IDetailandmedOsaPant @detailandmedOsaPant) {
            this.@__osapantVoiTingimuslikVoorandamine = @detailandmedOsaPant.OsapantVoiTingimuslikVoorandamine;
            this.@__osaOmanikuLiik = @detailandmedOsaPant.OsaOmanikuLiik;
            this.@__osaOmanikuIsikukoodRegistrikood = @detailandmedOsaPant.OsaOmanikuIsikukoodRegistrikood;
            this.@__osaOmanikuValisKood = @detailandmedOsaPant.OsaOmanikuValisKood;
            this.@__osaOmanikuSynniaeg = @detailandmedOsaPant.OsaOmanikuSynniaeg;
            this.@__osaOmanikuNimi = @detailandmedOsaPant.OsaOmanikuNimi;
            this.@__osaOmanikuEesnimi = @detailandmedOsaPant.OsaOmanikuEesnimi;
            this.@__osaSuurus = @detailandmedOsaPant.OsaSuurus;
            this.@__osapandiJarjekoht = @detailandmedOsaPant.OsapandiJarjekoht;
            this.@__osapandiKirjeldus = @detailandmedOsaPant.OsapandiKirjeldus;
            this.@__osapandiAlgusKpv = @detailandmedOsaPant.OsapandiAlgusKpv;
            this.@__osapandiLoppKpv = @detailandmedOsaPant.OsapandiLoppKpv;
            this.@__pandipidajad = @detailandmedOsaPant.Pandipidajad;
        }
        
        public virtual string OsapantVoiTingimuslikVoorandamine {
            get {
                return this.@__osapantVoiTingimuslikVoorandamine;
            }
            set {
                this.@__osapantVoiTingimuslikVoorandamine = value;
            }
        }
        
        public virtual string OsaOmanikuLiik {
            get {
                return this.@__osaOmanikuLiik;
            }
            set {
                this.@__osaOmanikuLiik = value;
            }
        }
        
        public virtual string OsaOmanikuIsikukoodRegistrikood {
            get {
                return this.@__osaOmanikuIsikukoodRegistrikood;
            }
            set {
                this.@__osaOmanikuIsikukoodRegistrikood = value;
            }
        }
        
        public virtual string OsaOmanikuValisKood {
            get {
                return this.@__osaOmanikuValisKood;
            }
            set {
                this.@__osaOmanikuValisKood = value;
            }
        }
        
        public virtual System.DateTime? OsaOmanikuSynniaeg {
            get {
                return this.@__osaOmanikuSynniaeg;
            }
            set {
                this.@__osaOmanikuSynniaeg = value;
            }
        }
        
        public virtual string OsaOmanikuNimi {
            get {
                return this.@__osaOmanikuNimi;
            }
            set {
                this.@__osaOmanikuNimi = value;
            }
        }
        
        public virtual string OsaOmanikuEesnimi {
            get {
                return this.@__osaOmanikuEesnimi;
            }
            set {
                this.@__osaOmanikuEesnimi = value;
            }
        }
        
        public virtual System.Decimal? OsaSuurus {
            get {
                return this.@__osaSuurus;
            }
            set {
                this.@__osaSuurus = value;
            }
        }
        
        public virtual System.Int32? OsapandiJarjekoht {
            get {
                return this.@__osapandiJarjekoht;
            }
            set {
                this.@__osapandiJarjekoht = value;
            }
        }
        
        public virtual string OsapandiKirjeldus {
            get {
                return this.@__osapandiKirjeldus;
            }
            set {
                this.@__osapandiKirjeldus = value;
            }
        }
        
        public virtual System.DateTime? OsapandiAlgusKpv {
            get {
                return this.@__osapandiAlgusKpv;
            }
            set {
                this.@__osapandiAlgusKpv = value;
            }
        }
        
        public virtual System.DateTime? OsapandiLoppKpv {
            get {
                return this.@__osapandiLoppKpv;
            }
            set {
                this.@__osapandiLoppKpv = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IDetailandmedPandipidaja> Pandipidajad {
            get {
                return this.@__pandipidajad;
            }
            set {
                this.@__pandipidajad = value;
            }
        }
    }
}
